//入口文件
import Vue from 'vue'
import App from './App.vue'
//三级联动组件  ---全局组件
import TypeNav from '@/views/Home/TypeNav';
//第一个参数：全局组件的名字，第二个参数：哪一个组件
Vue.component(TypeNav.name, TypeNav);

//注册轮播图组件为全局组件
import Carousel from '@/components/Carousel';
Vue.component(Carousel.name, Carousel);

//注册分页器为全局组件
import Pagination from '@/components/Pagination'
Vue.component(Pagination.name, Pagination)

//引入路由
import router from './router'
//引入vuex仓库
import store from '@/store';
//测试
// import { reqCategoryList } from '@/api'
// reqCategoryList();
//测试reqGetSearchInfo接口 ,传参时，必须要有一个默认参数，空数组也行
// import { reqGetSearchInfo } from '@/api/index';
// console.log(reqGetSearchInfo({}))

//引入MockServer.js ---mock模拟数据，不需要对外暴露,但是至少要执行一次
import '@/mock/mockServe';
//引入swiper的css样式
import 'swiper/css/swiper.css';


Vue.config.productionTip = false

new Vue({
  //注册路由:地下的写法kv一致，省略V 【router小写的】
  //注册路由信息：当这里书写router的时候，组件身上都带有$route和$router属性
  router,
  //注册仓库:组件身上会多了一个$store属性
  store,
  render: h => h(App),
  //全局事件总线$bus配置
  beforeCreate() {  //声明周期函数
    Vue.prototype.$bus = this; //this = VM
  }
}).$mount('#app')
